| CODE | CPS3230 | ||||||||||||
| TITLE | Test Engineering and Testable System Design | ||||||||||||
| 今日黑料 LEVEL | 03 - Years 2, 3, 4 in Modular Undergraduate Course | ||||||||||||
| EQF/MQF LEVEL | 6 | ||||||||||||
| ECTS CREDITS | 5 | ||||||||||||
| DEPARTMENT | Computer Science | ||||||||||||
| DESCRIPTION | At its core, a software engineer’s role is to provide peace of mind, to build systems stakeholders can trust. Testing is the key enabler of that trust. Civil engineers are able to guarantee that a bridge will withstand certain traffic and weather forces whilst chemical engineers are able to guarantee that certain chemicals will not destabilise each other if mixed together. Students are introduced to the concepts of software testing and the engineering of testable systems, core skills that make the difference between a novice developer and a professional engineer. With AI now becoming an integral tool in an engineer's toolbox, students will learn how to leverage it responsibly to support test design and execution while understanding its limitations and the need for human judgment. Using a predominantly hands-on approach whereby theory is backed up by a substantial practical component, students will explore their future role in software engineering from the point of view of how they can not only design but also build testable systems. Unit and system testing will build on this by leveraging the testable nature of the systems to provide confidence in their quality and ongoing functionality during iterative development, delivering assurance to stakeholders through automated testing frameworks. This study-unit is ideal for students who aim to become strong, industry-ready software engineers who can design systems that are reliable, maintainable, and trusted by stakeholders. The content of this unit encompasses core testing concepts, practical techniques, and the responsible use of AI tools in test design and execution. Throughout this unit, student exposure will include (but not be limited to) fundamental testing concepts, test design techniques, testing processes, unit/integration/system testing, web applications testing. Study-unit Aims: At a high level, the study-unit aims to: - Develop an enginereing mindset where quality and testability are built in from the start; - Equip students with skills in test design, selection and execution; - Cover unit, integration, and system testing at a level expected by modern industry practices; - Introduce students to automated web application testing patterns and tools; - Develop an enginereing mindset where quality and testability are built in from the start; - Encourage the responsible and informed use of AI tools in testing while recognising their limitations. Learning Outcomes: 1. Knowledge & Understanding By the end of the study-unit the student will be able to: - Recall and discuss the fundamental principles of software testing in order to frame the role, benefits and limitations of software within software engineering; - Compare and contrast the various levels of testing whilst relating them to test design techniques, team roles and the types of problems they aim to uncover; - Outline a number of black box test design techniques so as to be able to recommend (and justify) the use of particular techniques depending on the situation at hand; - Discuss how AI tools can be used in test design and execution while understanding their limitations and the importance of human judgment. 2. Skills By the end of the study-unit the student will be able to: - Select and make use of a selection of black box and white box testing techniques to ensure sufficient test coverage of control and data aspects of an application; - Design and implement a unit test suite and analyse its effectiveness through code coverage analysis; - Design and implement an automated web application system testing suite; - Design and implement basic runtime monitoring; - Use AI tools responsibly to support testing tasks while validating their outputs. |
||||||||||||
| STUDY-UNIT TYPE | Lecture and Tutorial | ||||||||||||
| METHOD OF ASSESSMENT |
|
||||||||||||
| LECTURER/S | Mark Micallef |
||||||||||||
|
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints. Units not attracting a sufficient number of registrations may be withdrawn without notice. It should be noted that all the information in the description above applies to study-units available during the academic year 2026/7. It may be subject to change in subsequent years. |
|||||||||||||